import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

import '../../api/DeviceApi.dart';
import '../../commponets/ItemView.dart';
import '../../tools/widgets/my_app_bar.dart';
import '../../utils/toast_utils.dart';


class UserHideAuthPage extends StatefulWidget {
  const UserHideAuthPage({
    super.key,
  });

  @override
  State<UserHideAuthPage> createState() => _UserHideAuthPageState();
}

class _UserHideAuthPageState extends State<UserHideAuthPage> {
  final DeviceApi _deviceApi = DeviceApi();
  // 隐私协议内容
  final String _privacyAgreement = """
用户隐私协议

我们尊重并保护你的隐私。本协议旨在说明我们如何收集、使用、存储和保护你的个人信息，请你认真阅读。

一、收集的信息类型及用途
1. 账号信息：
   - 收集内容：手机号、邮箱、注册时填写的身份信息（如姓名）；
   - 用途：账号注册、身份验证、密码找回、重要通知推送。

2. 通信信息：
   - 收集内容：SIP呼叫记录（通话时间、时长、对方号码）、对讲及消息内容（文本、语音）；
   - 用途：保障通信功能实现、存储通信历史（本地存储为主，云端仅在你开启同步时存储）、解决通信故障。

3. 设备与网络信息：
   - 收集内容：设备型号、IP地址、网络类型、SIP服务器连接信息、绑定的监控设备ID；
   - 用途：优化通信质量、保障服务稳定性、实现设备间连接。

4. 视频监控相关信息：
   - 收集内容：你绑定的监控设备编号、监控画面访问记录（不含画面内容，画面仅本地或加密传输）；
   - 用途：验证设备访问权限、记录合法使用轨迹。

5. 扫码信息：
   - 收集内容：扫码获取的设备ID、连接参数（不包含无关二维码内容）；
   - 用途：实现设备快速绑定，信息仅用于单次连接验证。

二、信息的存储与保护
1. 通信记录、消息内容默认存储在你的本地设备，如需云端同步需经你主动开启，云端存储期限与账号有效期一致。
2. 采用加密传输技术（如TLS）保护SIP通信及视频流数据，防止信息被窃取。
3. 监控画面仅在你的设备与监控设备间加密传输，我们不存储完整监控视频（除非你主动开启云存储功能并同意相关条款）。

三、信息共享限制
1. 除非法律法规要求（如司法机关依法调取），我们不会向第三方共享你的通信记录、监控访问信息。
2. 为实现服务功能，可能与SIP服务器提供商、云服务供应商共享必要的设备连接信息，但会要求其严格保密。

四、你的权利
1. 可随时在App内查看或删除本地通信记录、解绑监控设备。
2. 如需注销账号，可通过设置申请，注销后我们将删除云端存储的个人信息（法律法规要求留存的除外）。
3. 如发现监控权限被滥用，可立即联系客服冻结相关设备访问权限。

五、特别提示
- 请避免在公共网络环境下传输敏感信息，防止被第三方截取；
- 定期修改账号密码，开启二次验证功能以增强安全性。

六、协议的变更
我们可能会更新本协议，变更后将在App内公示，继续使用本App即视为你同意新的协议内容。

七、联系我们
如你对本协议有疑问，可通过[violet.liu@uniwin-global.com]与我们联系。
""";

  @override
  void initState() {
    super.initState();
    // 如需从文件加载协议内容，可以在这里实现
    // _loadPrivacyFromFile();
  }

  // 从本地文件加载隐私协议内容的方法
  // Future<void> _loadPrivacyFromFile() async {
  //   try {
  //     String content = await rootBundle.loadString('assets/texts/privacy_agreement.txt');
  //     setState(() {
  //       // 更新协议内容
  //     });
  //   } catch (e) {
  //     ToastUtils.showToast('加载隐私协议失败');
  //     debugPrint('加载隐私协议失败: $e');
  //   }
  // }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: MyAppBar(
        centerTitle: '用户隐私协议',
        backgroundColor: Colors.transparent,
        dropdownWidth: 140,
        dropdownBackgroundColor: Colors.white,
        dropdownBorderRadius: 20,
      ),
      body: Container(
        padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 10),
        child: SingleChildScrollView(
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.start,
            children: [
              const SizedBox(height: 10),
              Text(
                _privacyAgreement,
                style: const TextStyle(
                  fontSize: 14,
                  height: 1.6, // 保持与用户协议一致的行高
                  color: Color(0xFF333333),
                ),
                textAlign: TextAlign.justify,
              ),
              const SizedBox(height: 30), // 底部留白，提升阅读体验
            ],
          ),
        ),
      ),
    );
  }
}
